WebKitWebViewController

WebKitWebViewController 类是一个基于 WebKit API 的 PlatformWebViewController 实现。该类通过封装 WebKit 的功能,提供了丰富的接口来控制和操作 WebView,使得开发者可以方便地在 Flutter 应用中使用 WebView。


构造函数

  WebKitWebViewController(PlatformWebViewControllerCreationParams params)
	  // 如果传入 params 是 PlatformWebViewControllerCreationParams,则转为 WebKitWebViewControllerCreationParams
      : super.implementation(params is WebKitWebViewControllerCreationParams
            ? params
            : WebKitWebViewControllerCreationParams
                .fromPlatformWebViewControllerCreationParams(params)) {
	// 加载进度监听
    _webView.addObserver(_webView, keyPath: 'estimatedProgress', /* */);
    // URL监听
    _webView.addObserver(_webView, keyPath: 'URL', /* */);

    final WeakReference<WebKitWebViewController> weakThis =
        WeakReference<WebKitWebViewController>(this);
    // 创建 createUIDelegate
    _uiDelegate = _webKitParams.webKitProxy.createUIDelegate(
      instanceManager: _webKitParams._instanceManager,
      onCreateWebView: /* */,
      requestMediaCapturePermission: /* */,,
      runJavaScriptAlertDialog: /* */,,
      runJavaScriptConfirmDialog: /* */,,
      runJavaScriptTextInputDialog:/* */,
    );

    _webView.setUIDelegate(_uiDelegate);
  }

加载内容


JavaScript 通道


导航控制


缓存和存储


JavaScript 执行


页面信息


滚动控制


其他设置


本文作者:Maeiee

本文链接:WebKitWebViewController

版权声明:如无特别声明,本文即为原创文章,版权归 Maeiee 所有,未经允许不得转载!


喜欢我文章的朋友请随缘打赏,鼓励我创作更多更好的作品!